[INFO] cloning repository https://github.com/psomas/mosalloc-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/psomas/mosalloc-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpsomas%2Fmosalloc-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpsomas%2Fmosalloc-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 5633d3ef4b9427dd97e10080070eed9db797a694
[INFO] fixing psomas/mosalloc-rs against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpsomas%2Fmosalloc-rs" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/psomas/mosalloc-rs
[INFO] finished tweaking git repo https://github.com/psomas/mosalloc-rs
[INFO] tweaked toml for git repo https://github.com/psomas/mosalloc-rs written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/psomas/mosalloc-rs on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/psomas/mosalloc-rs already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 629632447b71ca341f4b45b892ee415b6b3c184838ec26974c5031dad8930b9a
[INFO] running `Command { std: "docker" "start" "629632447b71ca341f4b45b892ee415b6b3c184838ec26974c5031dad8930b9a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "629632447b71ca341f4b45b892ee415b6b3c184838ec26974c5031dad8930b9a" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "629632447b71ca341f4b45b892ee415b6b3c184838ec26974c5031dad8930b9a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "629632447b71ca341f4b45b892ee415b6b3c184838ec26974c5031dad8930b9a" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating src/libmosalloc/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling proc-macro2 v1.0.67
[INFO] [stderr]    Compiling libc v0.2.148
[INFO] [stderr]     Checking memchr v2.6.3
[INFO] [stderr]    Compiling serde v1.0.188
[INFO] [stderr]     Checking regex-syntax v0.7.5
[INFO] [stderr]     Checking os_str_bytes v6.5.1
[INFO] [stderr]     Checking indexmap v1.9.3
[INFO] [stderr]     Checking ryu v1.0.15
[INFO] [stderr]     Checking termcolor v1.3.0
[INFO] [stderr]     Checking once_cell v1.18.0
[INFO] [stderr]     Checking clap_lex v0.2.4
[INFO] [stderr]     Checking itoa v1.0.9
[INFO] [stderr]    Compiling pkg-config v0.3.27
[INFO] [stderr]    Compiling libseccomp-sys v0.2.1
[INFO] [stderr]     Checking bitflags v2.4.0
[INFO] [stderr]     Checking aho-corasick v1.1.1
[INFO] [stderr]     Checking csv-core v0.1.10
[INFO] [stderr]    Compiling libseccomp v0.2.3
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling syn v2.0.37
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking nix v0.24.3
[INFO] [stderr]     Checking redhook v2.0.0
[INFO] [stderr]     Checking epoll v4.3.3
[INFO] [stderr]     Checking regex-automata v0.3.8
[INFO] [stderr]    Compiling syscalls v0.6.14
[INFO] [stderr]    Compiling serde_derive v1.0.188
[INFO] [stderr]    Compiling serde_repr v0.1.16
[INFO] [stderr]     Checking regex v1.9.5
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling clap_derive v3.2.25
[INFO] [stderr]    Compiling ctor v0.1.26
[INFO] [stderr]     Checking clap v3.2.25
[INFO] [stderr]     Checking csv v1.2.2
[INFO] [stderr]     Checking mosalloc-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed src/utils/htlb.rs (8 fixes)
[INFO] [stderr]        Fixed src/utils/misc.rs (1 fix)
[INFO] [stderr]    Migrating src/bin/run_mosalloc.rs from 2021 edition to 2024
[INFO] [stderr]     Checking mosalloc v0.1.0 (/opt/rustwide/workdir/src/libmosalloc)
[INFO] [stderr]        Fixed src/bin/run_mosalloc.rs (1 fix)
[INFO] [stderr]    Migrating src/bin/reserve_huge_pages.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating src/libmosalloc/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed src/libmosalloc/src/preload_hooks.rs (3 fixes)
[INFO] [stderr]        Fixed src/libmosalloc/src/internal_allocator.rs (5 fixes)
[INFO] [stderr]        Fixed src/libmosalloc/src/seccomp_hooks.rs (1 fix)
[INFO] [stderr]        Fixed src/libmosalloc/src/init.rs (1 fix)
[INFO] [stderr]        Fixed src/libmosalloc/src/allocator.rs (6 fixes)
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:24:33
[INFO] [stdout]    |
[INFO] [stdout] 24 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | / hook! {
[INFO] [stdout] 18 | |     unsafe fn mmap(addr: *mut c_void,
[INFO] [stdout] 19 | |                    len: size_t,
[INFO] [stdout] 20 | |                    prot: c_int,
[INFO] [stdout] ...  |
[INFO] [stdout] 30 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: `--force-warn unsafe-op-in-unsafe-fn` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::mmap` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             mosalloc.mmap(addr as usize, len, prot, flags, fd, offset) as *mut c_void
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             real!(mmap)(addr, len, prot, flags, fd, offset)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:47:33
[INFO] [stdout]    |
[INFO] [stdout] 47 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:44:1
[INFO] [stdout]    |
[INFO] [stdout] 44 | / hook! {
[INFO] [stdout] 45 | |     unsafe fn munmap(addr: *mut c_void,
[INFO] [stdout] 46 | |                      len: size_t) -> c_int => mosalloc_munmap {
[INFO] [stdout] 47 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] ...  |
[INFO] [stdout] 53 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |             real!(munmap)(addr, len)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:63:33
[INFO] [stdout]    |
[INFO] [stdout] 63 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:60:1
[INFO] [stdout]    |
[INFO] [stdout] 60 | / hook! {
[INFO] [stdout] 61 | |     unsafe fn mprotect(addr: *mut c_void,
[INFO] [stdout] 62 | |                      len: size_t, prot: c_int) -> c_int => mosalloc_mprotect {
[INFO] [stdout] 63 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] ...  |
[INFO] [stdout] 69 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             real!(mprotect)(addr, len, prot)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:81:33
[INFO] [stdout]    |
[INFO] [stdout] 81 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | / hook! {
[INFO] [stdout] 77 | |     // FIXME: some of the madvise calls should be probably mocked by mosalloc for the mappings
[INFO] [stdout] 78 | |     // under its control
[INFO] [stdout] 79 | |     unsafe fn madvise(addr: *mut c_void,
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             real!(madvise)(addr, len, advice)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:97:33
[INFO] [stdout]     |
[INFO] [stdout]  97 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:94:1
[INFO] [stdout]     |
[INFO] [stdout]  94 | / hook! {
[INFO] [stdout]  95 | |     // FIXME: handle mremap to mosalloc-managed mappings
[INFO] [stdout]  96 | |     unsafe fn mremap(old_address: *mut c_void, old_size: size_t, new_size: size_t, flags: c_int, new_address: *mut c_void) -> *mu...
[INFO] [stdout]  97 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::mremap` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:98:13
[INFO] [stdout]    |
[INFO] [stdout] 98 |             mosalloc.mremap(old_address as usize, old_size, new_size, flags, new_address as usize) as *mut c_void
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |             real!(mremap)(old_address, old_size, new_size, flags, new_address)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:118:33
[INFO] [stdout]     |
[INFO] [stdout] 118 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:116:1
[INFO] [stdout]     |
[INFO] [stdout] 116 | / hook! {
[INFO] [stdout] 117 | |     unsafe fn brk(addr: *mut c_void) -> c_int => mosalloc_brk {
[INFO] [stdout] 118 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] 119 | |             mosalloc.brk(addr as usize)
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::brk` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 |             mosalloc.brk(addr as usize)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:121:13
[INFO] [stdout]     |
[INFO] [stdout] 121 |             real!(brk)(addr)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:133:33
[INFO] [stdout]     |
[INFO] [stdout] 133 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:131:1
[INFO] [stdout]     |
[INFO] [stdout] 131 | / hook! {
[INFO] [stdout] 132 | |     unsafe fn sbrk(incr: intptr_t) -> *mut c_void => mosalloc_sbrk {
[INFO] [stdout] 133 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] 134 | |             mosalloc.sbrk(incr) as *mut c_void
[INFO] [stdout] ...   |
[INFO] [stdout] 139 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::sbrk` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |             mosalloc.sbrk(incr) as *mut c_void
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:136:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |             real!(sbrk)(incr)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:24:33
[INFO] [stdout]    |
[INFO] [stdout] 24 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `--force-warn static-mut-refs` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:47:33
[INFO] [stdout]    |
[INFO] [stdout] 47 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:63:33
[INFO] [stdout]    |
[INFO] [stdout] 63 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:81:33
[INFO] [stdout]    |
[INFO] [stdout] 81 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:97:33
[INFO] [stdout]    |
[INFO] [stdout] 97 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:118:33
[INFO] [stdout]     |
[INFO] [stdout] 118 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:133:33
[INFO] [stdout]     |
[INFO] [stdout] 133 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:148:33
[INFO] [stdout]     |
[INFO] [stdout] 148 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     PRELOAD_ALLOC.as_mut().unwrap().drain();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/seccomp_hooks.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let mosalloc = SECCOMP_MOSALLOC.as_mut().unwrap();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout] 17 - static mut SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout] 17 + static SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/seccomp_hooks.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     SECCOMP_MOSALLOC.as_mut().unwrap().drain();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]  17 - static mut SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout]  17 + static SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:24:33
[INFO] [stdout]    |
[INFO] [stdout] 24 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | / hook! {
[INFO] [stdout] 18 | |     unsafe fn mmap(addr: *mut c_void,
[INFO] [stdout] 19 | |                    len: size_t,
[INFO] [stdout] 20 | |                    prot: c_int,
[INFO] [stdout] ...  |
[INFO] [stdout] 30 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: `--force-warn unsafe-op-in-unsafe-fn` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::mmap` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             mosalloc.mmap(addr as usize, len, prot, flags, fd, offset) as *mut c_void
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             real!(mmap)(addr, len, prot, flags, fd, offset)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:47:33
[INFO] [stdout]    |
[INFO] [stdout] 47 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:44:1
[INFO] [stdout]    |
[INFO] [stdout] 44 | / hook! {
[INFO] [stdout] 45 | |     unsafe fn munmap(addr: *mut c_void,
[INFO] [stdout] 46 | |                      len: size_t) -> c_int => mosalloc_munmap {
[INFO] [stdout] 47 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] ...  |
[INFO] [stdout] 53 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |             real!(munmap)(addr, len)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:63:33
[INFO] [stdout]    |
[INFO] [stdout] 63 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:60:1
[INFO] [stdout]    |
[INFO] [stdout] 60 | / hook! {
[INFO] [stdout] 61 | |     unsafe fn mprotect(addr: *mut c_void,
[INFO] [stdout] 62 | |                      len: size_t, prot: c_int) -> c_int => mosalloc_mprotect {
[INFO] [stdout] 63 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] ...  |
[INFO] [stdout] 69 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             real!(mprotect)(addr, len, prot)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:81:33
[INFO] [stdout]    |
[INFO] [stdout] 81 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | / hook! {
[INFO] [stdout] 77 | |     // FIXME: some of the madvise calls should be probably mocked by mosalloc for the mappings
[INFO] [stdout] 78 | |     // under its control
[INFO] [stdout] 79 | |     unsafe fn madvise(addr: *mut c_void,
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             real!(madvise)(addr, len, advice)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:97:33
[INFO] [stdout]     |
[INFO] [stdout]  97 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:94:1
[INFO] [stdout]     |
[INFO] [stdout]  94 | / hook! {
[INFO] [stdout]  95 | |     // FIXME: handle mremap to mosalloc-managed mappings
[INFO] [stdout]  96 | |     unsafe fn mremap(old_address: *mut c_void, old_size: size_t, new_size: size_t, flags: c_int, new_address: *mut c_void) -> *mu...
[INFO] [stdout]  97 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::mremap` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:98:13
[INFO] [stdout]    |
[INFO] [stdout] 98 |             mosalloc.mremap(old_address as usize, old_size, new_size, flags, new_address as usize) as *mut c_void
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |             real!(mremap)(old_address, old_size, new_size, flags, new_address)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:118:33
[INFO] [stdout]     |
[INFO] [stdout] 118 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:116:1
[INFO] [stdout]     |
[INFO] [stdout] 116 | / hook! {
[INFO] [stdout] 117 | |     unsafe fn brk(addr: *mut c_void) -> c_int => mosalloc_brk {
[INFO] [stdout] 118 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] 119 | |             mosalloc.brk(addr as usize)
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::brk` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 |             mosalloc.brk(addr as usize)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:121:13
[INFO] [stdout]     |
[INFO] [stdout] 121 |             real!(brk)(addr)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:133:33
[INFO] [stdout]     |
[INFO] [stdout] 133 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:131:1
[INFO] [stdout]     |
[INFO] [stdout] 131 | / hook! {
[INFO] [stdout] 132 | |     unsafe fn sbrk(incr: intptr_t) -> *mut c_void => mosalloc_sbrk {
[INFO] [stdout] 133 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] 134 | |             mosalloc.sbrk(incr) as *mut c_void
[INFO] [stdout] ...   |
[INFO] [stdout] 139 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::sbrk` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |             mosalloc.sbrk(incr) as *mut c_void
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:136:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |             real!(sbrk)(incr)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:24:33
[INFO] [stdout]    |
[INFO] [stdout] 24 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `--force-warn static-mut-refs` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:47:33
[INFO] [stdout]    |
[INFO] [stdout] 47 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:63:33
[INFO] [stdout]    |
[INFO] [stdout] 63 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:81:33
[INFO] [stdout]    |
[INFO] [stdout] 81 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:97:33
[INFO] [stdout]    |
[INFO] [stdout] 97 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:118:33
[INFO] [stdout]     |
[INFO] [stdout] 118 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:133:33
[INFO] [stdout]     |
[INFO] [stdout] 133 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 36.33s
[INFO] [stderr] crater-edition-check: mosalloc v0.1.0 (/opt/rustwide/workdir/src/libmosalloc) updating edition from 2021 to 2024
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:148:33
[INFO] [stdout]     |
[INFO] [stdout] 148 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     PRELOAD_ALLOC.as_mut().unwrap().drain();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/seccomp_hooks.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let mosalloc = SECCOMP_MOSALLOC.as_mut().unwrap();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout] 17 - static mut SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout] 17 + static SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/seccomp_hooks.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     SECCOMP_MOSALLOC.as_mut().unwrap().drain();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]  17 - static mut SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout]  17 + static SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr] crater-edition-check: mosalloc-rs v0.1.0 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]     Checking mosalloc-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/utils/rangelist.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn iter(&self) -> RangeListIter {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn iter(&self) -> RangeListIter<'_> {
[INFO] [stdout]    |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking mosalloc v0.1.0 (/opt/rustwide/workdir/src/libmosalloc)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/utils/rangelist.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn iter(&self) -> RangeListIter {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn iter(&self) -> RangeListIter<'_> {
[INFO] [stdout]    |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arena_rem`
[INFO] [stdout]   --> src/libmosalloc/src/internal_allocator.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let arena_rem = ARENA_SIZE - arena_total;
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arena_rem`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmap_total`
[INFO] [stdout]   --> src/libmosalloc/src/internal_allocator.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let mmap_total = INTERNAL_ALLOCATOR.mmap_total.load(Ordering::Relaxed);
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mmap_total`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmap_overhead`
[INFO] [stdout]   --> src/libmosalloc/src/internal_allocator.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mmap_overhead = INTERNAL_ALLOCATOR.mmap_overhead.load(Ordering::Relaxed);
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mmap_overhead`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:24:33
[INFO] [stdout]    |
[INFO] [stdout] 24 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | / hook! {
[INFO] [stdout] 18 | |     unsafe fn mmap(addr: *mut c_void,
[INFO] [stdout] 19 | |                    len: size_t,
[INFO] [stdout] 20 | |                    prot: c_int,
[INFO] [stdout] ...  |
[INFO] [stdout] 30 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::mmap` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             mosalloc.mmap(addr as usize, len, prot, flags, fd, offset) as *mut c_void
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             real!(mmap)(addr, len, prot, flags, fd, offset)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:47:33
[INFO] [stdout]    |
[INFO] [stdout] 47 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:44:1
[INFO] [stdout]    |
[INFO] [stdout] 44 | / hook! {
[INFO] [stdout] 45 | |     unsafe fn munmap(addr: *mut c_void,
[INFO] [stdout] 46 | |                      len: size_t) -> c_int => mosalloc_munmap {
[INFO] [stdout] 47 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] ...  |
[INFO] [stdout] 53 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |             real!(munmap)(addr, len)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:63:33
[INFO] [stdout]    |
[INFO] [stdout] 63 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:60:1
[INFO] [stdout]    |
[INFO] [stdout] 60 | / hook! {
[INFO] [stdout] 61 | |     unsafe fn mprotect(addr: *mut c_void,
[INFO] [stdout] 62 | |                      len: size_t, prot: c_int) -> c_int => mosalloc_mprotect {
[INFO] [stdout] 63 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] ...  |
[INFO] [stdout] 69 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             real!(mprotect)(addr, len, prot)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:81:33
[INFO] [stdout]    |
[INFO] [stdout] 81 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | / hook! {
[INFO] [stdout] 77 | |     // FIXME: some of the madvise calls should be probably mocked by mosalloc for the mappings
[INFO] [stdout] 78 | |     // under its control
[INFO] [stdout] 79 | |     unsafe fn madvise(addr: *mut c_void,
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             real!(madvise)(addr, len, advice)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:97:33
[INFO] [stdout]     |
[INFO] [stdout]  97 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:94:1
[INFO] [stdout]     |
[INFO] [stdout]  94 | / hook! {
[INFO] [stdout]  95 | |     // FIXME: handle mremap to mosalloc-managed mappings
[INFO] [stdout]  96 | |     unsafe fn mremap(old_address: *mut c_void, old_size: size_t, new_size: size_t, flags: c_int, new_address: *mut c_void) -> *mu...
[INFO] [stdout]  97 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::mremap` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:98:13
[INFO] [stdout]    |
[INFO] [stdout] 98 |             mosalloc.mremap(old_address as usize, old_size, new_size, flags, new_address as usize) as *mut c_void
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |             real!(mremap)(old_address, old_size, new_size, flags, new_address)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:118:33
[INFO] [stdout]     |
[INFO] [stdout] 118 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:116:1
[INFO] [stdout]     |
[INFO] [stdout] 116 | / hook! {
[INFO] [stdout] 117 | |     unsafe fn brk(addr: *mut c_void) -> c_int => mosalloc_brk {
[INFO] [stdout] 118 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] 119 | |             mosalloc.brk(addr as usize)
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arena_rem`
[INFO] [stdout]   --> src/libmosalloc/src/internal_allocator.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let arena_rem = ARENA_SIZE - arena_total;
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_arena_rem`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::brk` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 |             mosalloc.brk(addr as usize)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:121:13
[INFO] [stdout]     |
[INFO] [stdout] 121 |             real!(brk)(addr)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:133:33
[INFO] [stdout]     |
[INFO] [stdout] 133 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:131:1
[INFO] [stdout]     |
[INFO] [stdout] 131 | / hook! {
[INFO] [stdout] 132 | |     unsafe fn sbrk(incr: intptr_t) -> *mut c_void => mosalloc_sbrk {
[INFO] [stdout] 133 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] 134 | |             mosalloc.sbrk(incr) as *mut c_void
[INFO] [stdout] ...   |
[INFO] [stdout] 139 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::sbrk` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |             mosalloc.sbrk(incr) as *mut c_void
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:136:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |             real!(sbrk)(incr)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmap_total`
[INFO] [stdout]   --> src/libmosalloc/src/internal_allocator.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let mmap_total = INTERNAL_ALLOCATOR.mmap_total.load(Ordering::Relaxed);
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mmap_total`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mmap_overhead`
[INFO] [stdout]   --> src/libmosalloc/src/internal_allocator.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mmap_overhead = INTERNAL_ALLOCATOR.mmap_overhead.load(Ordering::Relaxed);
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mmap_overhead`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/libmosalloc/src/region.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |         for r in self.free_map.iter() {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:24:33
[INFO] [stdout]    |
[INFO] [stdout] 24 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | / hook! {
[INFO] [stdout] 18 | |     unsafe fn mmap(addr: *mut c_void,
[INFO] [stdout] 19 | |                    len: size_t,
[INFO] [stdout] 20 | |                    prot: c_int,
[INFO] [stdout] ...  |
[INFO] [stdout] 30 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::mmap` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             mosalloc.mmap(addr as usize, len, prot, flags, fd, offset) as *mut c_void
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             real!(mmap)(addr, len, prot, flags, fd, offset)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:47:33
[INFO] [stdout]    |
[INFO] [stdout] 47 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:44:1
[INFO] [stdout]    |
[INFO] [stdout] 44 | / hook! {
[INFO] [stdout] 45 | |     unsafe fn munmap(addr: *mut c_void,
[INFO] [stdout] 46 | |                      len: size_t) -> c_int => mosalloc_munmap {
[INFO] [stdout] 47 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] ...  |
[INFO] [stdout] 53 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |             real!(munmap)(addr, len)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/libmosalloc/src/region.rs:201:13
[INFO] [stdout]     |
[INFO] [stdout] 201 |         for r in self.free_map.iter() {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:63:33
[INFO] [stdout]    |
[INFO] [stdout] 63 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:60:1
[INFO] [stdout]    |
[INFO] [stdout] 60 | / hook! {
[INFO] [stdout] 61 | |     unsafe fn mprotect(addr: *mut c_void,
[INFO] [stdout] 62 | |                      len: size_t, prot: c_int) -> c_int => mosalloc_mprotect {
[INFO] [stdout] 63 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] ...  |
[INFO] [stdout] 69 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             real!(mprotect)(addr, len, prot)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:81:33
[INFO] [stdout]    |
[INFO] [stdout] 81 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:76:1
[INFO] [stdout]    |
[INFO] [stdout] 76 | / hook! {
[INFO] [stdout] 77 | |     // FIXME: some of the madvise calls should be probably mocked by mosalloc for the mappings
[INFO] [stdout] 78 | |     // under its control
[INFO] [stdout] 79 | |     unsafe fn madvise(addr: *mut c_void,
[INFO] [stdout] ...  |
[INFO] [stdout] 87 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             real!(madvise)(addr, len, advice)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/libmosalloc/src/region.rs:258:13
[INFO] [stdout]     |
[INFO] [stdout] 258 |         for r in self.free_map.iter() {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:97:33
[INFO] [stdout]     |
[INFO] [stdout]  97 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:94:1
[INFO] [stdout]     |
[INFO] [stdout]  94 | / hook! {
[INFO] [stdout]  95 | |     // FIXME: handle mremap to mosalloc-managed mappings
[INFO] [stdout]  96 | |     unsafe fn mremap(old_address: *mut c_void, old_size: size_t, new_size: size_t, flags: c_int, new_address: *mut c_void) -> *mu...
[INFO] [stdout]  97 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] ...   |
[INFO] [stdout] 103 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::mremap` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:98:13
[INFO] [stdout]    |
[INFO] [stdout] 98 |             mosalloc.mremap(old_address as usize, old_size, new_size, flags, new_address as usize) as *mut c_void
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |             real!(mremap)(old_address, old_size, new_size, flags, new_address)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:118:33
[INFO] [stdout]     |
[INFO] [stdout] 118 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:116:1
[INFO] [stdout]     |
[INFO] [stdout] 116 | / hook! {
[INFO] [stdout] 117 | |     unsafe fn brk(addr: *mut c_void) -> c_int => mosalloc_brk {
[INFO] [stdout] 118 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] 119 | |             mosalloc.brk(addr as usize)
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::brk` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 |             mosalloc.brk(addr as usize)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:121:13
[INFO] [stdout]     |
[INFO] [stdout] 121 |             real!(brk)(addr)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:133:33
[INFO] [stdout]     |
[INFO] [stdout] 133 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ use of mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:131:1
[INFO] [stdout]     |
[INFO] [stdout] 131 | / hook! {
[INFO] [stdout] 132 | |     unsafe fn sbrk(incr: intptr_t) -> *mut c_void => mosalloc_sbrk {
[INFO] [stdout] 133 | |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout] 134 | |             mosalloc.sbrk(incr) as *mut c_void
[INFO] [stdout] ...   |
[INFO] [stdout] 139 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `hook` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `allocator::Allocator::sbrk` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |             mosalloc.sbrk(incr) as *mut c_void
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:136:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |             real!(sbrk)(incr)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `analyze` and `hook` are never read
[INFO] [stdout]   --> src/libmosalloc/src/allocator.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct Allocator {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 26 |     analyze: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 27 |     dryrun: bool,
[INFO] [stdout] 28 |     hook: HookType,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Allocator` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/libmosalloc/src/region.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |         for r in self.free_map.iter() {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/libmosalloc/src/region.rs:201:13
[INFO] [stdout]     |
[INFO] [stdout] 201 |         for r in self.free_map.iter() {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/libmosalloc/src/region.rs:258:13
[INFO] [stdout]     |
[INFO] [stdout] 258 |         for r in self.free_map.iter() {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:24:33
[INFO] [stdout]    |
[INFO] [stdout] 24 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `#[deny(static_mut_refs)]` (part of `#[deny(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:47:33
[INFO] [stdout]    |
[INFO] [stdout] 47 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:63:33
[INFO] [stdout]    |
[INFO] [stdout] 63 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:81:33
[INFO] [stdout]    |
[INFO] [stdout] 81 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:97:33
[INFO] [stdout]    |
[INFO] [stdout] 97 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:118:33
[INFO] [stdout]     |
[INFO] [stdout] 118 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:133:33
[INFO] [stdout]     |
[INFO] [stdout] 133 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:148:33
[INFO] [stdout]     |
[INFO] [stdout] 148 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     PRELOAD_ALLOC.as_mut().unwrap().drain();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/seccomp_hooks.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let mosalloc = SECCOMP_MOSALLOC.as_mut().unwrap();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout] 17 - static mut SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout] 17 + static SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/seccomp_hooks.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     SECCOMP_MOSALLOC.as_mut().unwrap().drain();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]  17 - static mut SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout]  17 + static SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `analyze` and `hook` are never read
[INFO] [stdout]   --> src/libmosalloc/src/allocator.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct Allocator {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 26 |     analyze: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 27 |     dryrun: bool,
[INFO] [stdout] 28 |     hook: HookType,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Allocator` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:24:33
[INFO] [stdout]    |
[INFO] [stdout] 24 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `#[deny(static_mut_refs)]` (part of `#[deny(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:47:33
[INFO] [stdout]    |
[INFO] [stdout] 47 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:63:33
[INFO] [stdout]    |
[INFO] [stdout] 63 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:81:33
[INFO] [stdout]    |
[INFO] [stdout] 81 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/preload_hooks.rs:97:33
[INFO] [stdout]    |
[INFO] [stdout] 97 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout]  9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]  9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:118:33
[INFO] [stdout]     |
[INFO] [stdout] 118 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:133:33
[INFO] [stdout]     |
[INFO] [stdout] 133 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:148:33
[INFO] [stdout]     |
[INFO] [stdout] 148 |         if let Some(mosalloc) = PRELOAD_ALLOC.as_mut() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/preload_hooks.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     PRELOAD_ALLOC.as_mut().unwrap().drain();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]   9 - static mut PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]   9 + static PRELOAD_ALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/libmosalloc/src/seccomp_hooks.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let mosalloc = SECCOMP_MOSALLOC.as_mut().unwrap();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]    |
[INFO] [stdout] 17 - static mut SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout] 17 + static SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/libmosalloc/src/seccomp_hooks.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     SECCOMP_MOSALLOC.as_mut().unwrap().drain();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: this type already provides "interior mutability", so its binding doesn't need to be declared as mutable
[INFO] [stdout]     |
[INFO] [stdout]  17 - static mut SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout]  17 + static SECCOMP_MOSALLOC: Option<Allocator> = None;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `mosalloc` (lib) due to 11 previous errors; 25 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `mosalloc` (lib test) due to 11 previous errors; 25 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "629632447b71ca341f4b45b892ee415b6b3c184838ec26974c5031dad8930b9a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "629632447b71ca341f4b45b892ee415b6b3c184838ec26974c5031dad8930b9a", kill_on_drop: false }`
[INFO] [stdout] 629632447b71ca341f4b45b892ee415b6b3c184838ec26974c5031dad8930b9a
